Three-dimensional terrain-information generating system and method, and computer program therefor

ABSTRACT

A three-dimensional terrain-information generating system extracts a road region from altitude information arranged on a two-dimensional plane and adjusts the position and scale by matching the road region with a building/road map. Altitude information of a road region with a width that is greater than or equal to a preset width is obtained from the building/road map, and the obtained altitude information is arranged in a three-dimensional space. Ribbon forms that may intersect one another at a plurality of points are generated. Altitude information of a region such as a park that is almost free from the effects of a building on the three-dimensional terrain is obtained from the building/road map. Subsequently, a surface including such altitude information is created, thereby generating three-dimensional terrain data.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to three-dimensional terrain-informationgenerating systems and methods and computer programs therefor forgenerating terrain information including the relief of the ground. Inparticular, the present invention relates to a three-dimensionalterrain-information generating system and method and a computer programtherefor for extracting the three-dimensional shape of the ground on thebasis of altitude information of the ground, which is obtained by anairplane, a satellite, or the like.

More particularly, the present invention relates to a three-dimensionalterrain-information generating system and method and a computer programtherefor for extracting the three-dimensional shape of the ground usingaltitude information mapped onto a two-dimensional plane andbuilding/road information. In particular, the present invention relatesto a three-dimensional terrain-information generating system and methodand a computer program therefor for extracting the three-dimensionalshape of the ground from which buildings are eliminated.

2. Description of the Related Art

With the recent innovation of information technology, various types ofinformation content are created and edited on computers to offerservices such as information storage and information distribution. Forexample, map information indicating buildings and roads is integratedwith geographic information on a computer to offer services that presentregional information using map images for road guidance and touristinformation. Also, real-time navigation services have been offered tomobile stations such as vehicles and ships using a user's currentposition information detected by GPS (Global Positioning System) or thelike.

A map, landform, or geographic information is not only obtained bymeasurement on the ground, but also created on the basis of the resultsof observation from space by an airplane, a satellite, or the like. Arecent airplane with a range sensor can compute the three-dimensionalshape of the ground on the basis of measured altitude information of theground. Maps, in general, are orthographic projections, whereas aerialphotographs and satellite photographs are central projections. Altitudeinformation measured from space is compensated for geographical errors,and the altitude information is made into an ortho-image on the basis ofthe accurate geographic information, allowing the altitude informationto be mapped onto observation points on the map. (In the description,“elevation-data” refers to data generated by mapping altitudeinformation to each observation point on a two-dimensional plane.)

Basically, map information is two-dimensional planar positioninformation. The integration of the map information with such altitudeinformation allows the relief of the ground to be represented. As aresult, for example, a navigation system displays a stereoscopicthree-dimensional map image by taking the relief of the ground andlandscape into consideration. Such higher quality map informationdisplay services are thus offered. Alternatively, the three-dimensionalmap information is applied to public services such as flood controlsimulation or systems using virtual space.

In the suburbs and mountains, measurement of the range from space to theground directly and easily generates altitude information covering anextensive region. On the other hand, in central cities and downtownareas crowded with buildings, the distance, not to the ground, but toground covering objects such as houses and buildings is measured,resulting in an error component of terrain information.

In the use of altitude information (z) disposed on a plane (x, y), thealtitude information is subjected to a moving average filter or the liketo minimize the effects of unevenness due to ground covering objectssuch as buildings. Alternatively, altitude information of regionscorresponding to building regions that are obtained from a building mapis eliminated. Subsequently, each piece of the altitude informationserves as a spatial point at (x, y, z). The adjacent spatial points areconnected to create a polygon mesh, and polygon reduction is performedto obtain the three-dimensional shape of the ground.

The above-described techniques are disadvantageous in that thebuildings' altitude information is included in terrain data.

SUMMARY OF THE INVENTION

Accordingly, it is an object of the present invention to provide animproved three-dimensional terrain-information generating system andmethod and a computer program therefor for suitably extracting thethree-dimensional shape of the ground on the basis of the ground'saltitude information obtained by an airplane, a satellite, or the like.

It is another object of the present invention to provide an improvedthree-dimensional terrain-information generating system and method and acomputer program therefor for suitably extracting the three-dimensionalshape of the ground using altitude information that is mapped onto atwo-dimensional plane and building/road information.

It is a further object of the present invention to provide an improvedthree-dimensional terrain-information generating system and method and acomputer program therefor for accurately extracting thethree-dimensional shape of the ground from which buildings areeliminated.

In order to achieve the foregoing objects, according to a first aspectof the present invention, there is provided a three-dimensionalterrain-information generating system or method for generating moreaccurate terrain by mapping elevation-data including altitudeinformation that is mapped onto a two-dimensional plane ontobuilding/road map information and by removing effects of a building. Thesystem or method includes a flow analyzer or a flow analyzing step thatextracts a flow portion from the elevation-data; a matching unit or stepthat receives the extracted flow portion and that matches coordinates ofthe elevation-data with coordinates on a building/road map; a referenceregion obtaining unit or step that obtains a reference region forcreating three-dimensional terrain data from the elevation-data; and asurface fitting unit or step that performs the fitting of a surface sothat the surface includes the reference region on a face thereof.

The word “system” refers to a logical set of apparatuses (or functionalmodules for realizing specific functions). The apparatuses or functionalmodules need not be contained in a single casing.

According to the three-dimensional terrain-information generating systemor method according to the first aspect of the present invention, a roadregion is extracted from altitude information arranged on atwo-dimensional plane. The road region is matched with a building/roadmap to adjust the position and scale. Altitude information of a roadregion with a width greater than or equal to a specified width isobtained from the building/road map, and the obtained altitudeinformation is arranged in a three-dimensional space. Ribbon forms thatmay intersect one another at a plurality of points are generated.Altitude information of a region such as a park that is almost free fromthe effects of a building on the three-dimensional terrain is obtainedfrom the building/road map. Subsequently, a surface including suchaltitude information is created, thereby generating three-dimensionalterrain data.

According to the present invention, more accurate three-dimensionalterrain information (terrain of the ground) is obtained by suitablyremoving the effects of a ground covering object such as a building fromaltitude information arranged on a two-dimensional plane and abuilding/road map. Therefore, more accurate three-dimensional terraindata can be used in public services such as flood control simulation orsystems using virtual space.

The flow analyzer or the flow analyzing step may extract, from theelevation-data, a region having altitude information that indicates along, narrow, and gently winding region and that changes smoothly andcontinuously as the flow portion.

Since a highway region is wide, it is not influenced by buildingslocated on both sides thereof. On the basis of the knowledge that thehighway region is long, narrow, and gently winding and has a smoothlyand continuously changing altitude, the highway region can be extractedfrom the elevation data.

More specifically, the flow analyzer or the flow analyzing step mayobtain a road region by generating an image to which pixel valuescorresponding to the altitude information are mapped, decomposing theimage into frequency components by a Fourier transform, extracting afrequency component corresponding to the road region, performing aninverse Fourier transform, and extracting contours of the road region.

The matching unit or step may obtain a transform from the building/roadmap information to the elevation-data by matching the flow portionextracted by the flow analyzer or the flow analyzing step with a roadregion included in the building/road map information. The matching unitor step may obtain the altitude of a region other than abuilding-located region from the altitude information included in theelevation-data corresponding to the building/road map and may perform asurface approximation using the transform.

The reference region obtaining unit or step may extract a regionincluding a park that is free from the effects of the building as thereference region.

The surface fitting unit or step may generate a surface including thereference region by an approximation of a Non-Uniform Rational B-Spline(NURBS) surface.

The surface fitting unit or step may adjust the NURBS surface byminimizing a square error of NURBS parameters, and, when the NURBSsurface cannot be adjusted, may tessellate the NURBS surface intosmaller sections.

According to a second aspect of the present invention, there is provideda computer program written in a computer readable format to perform, ona computer system, the processing of generating three-dimensionalterrain information by mapping elevation-data including altitudeinformation that is mapped onto a two-dimensional plane ontobuilding/road map information and by removing effects of a building. Thecomputer program includes a flow analyzing step of extracting a flowportion from the elevation-data; a matching step of receiving theextracted flow portion and matching coordinates of the elevation-datawith coordinates on a building/road map; a reference region obtainingstep of obtaining a reference region for creating three-dimensionalterrain data from the elevation-data; and a surface fitting step ofperforming the fitting of a surface so that the surface includes thereference region on a face thereof.

The computer program according to the second aspect of the presentinvention defines a computer program written in a computer-readableformat to perform predetermined processing on a computer system. Inother words, the cooperative operation is achieved on the computersystem by installing the computer program according to the second aspectof the present invention into the computer system. Accordingly,operation and advantages similar to those of the three-dimensionalterrain-information generating system or method according to the firstaspect of the present invention are achieved.

According to the present invention, the three-dimensional shape of theground can be suitably extracted on the basis of altitude information ofthe ground, which is obtained by an airplane, a satellite, or the like.Also, the three-dimensional shape of the ground can be suitablyextracted using altitude information that is mapped onto atwo-dimensional plane and building/road information. Also, thethree-dimensional shape of the ground from which buildings areeliminated can be accurately extracted. In other words, more accuratethree-dimensional terrain information (landform) can be obtained bysuitably removing the effects of ground covering objects such asbuildings from altitude information arranged on a two-dimensional planeand a building/road map. Therefore, more accurate three-dimensionalterrain data can be used in public services such as flood controlsimulation or systems using virtual space.

Further objects, features, and advantages of the present invention willbecome apparent from the following description of the preferredembodiments with reference to the attached drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an illustration of the mapping of altitude information onto atwo-dimensional plane;

FIG. 2 is an illustration of the effects of a building on the actuallandform when a smoothing filter is used;

FIG. 3 is an illustration of reference regions for obtaining the terrainof the ground according to an embodiment of the present invention;

FIG. 4 is a block diagram showing the schematic functional configurationof a three-dimensional terrain-formation generating system according tothis embodiment;

FIG. 5 is a flowchart showing a schematic process of mapping, by thethree-dimensional terrain-information generating system according tothis embodiment, elevation-data onto a two-dimensional plane andremoving the effects of buildings;

FIG. 6 illustrates a method of obtaining a coordinate transform from abuilding/road map to elevation-data;

FIG. 7 is a flowchart showing a process of obtaining reference regionsfrom the elevation-data and obtaining a surface including the referenceregions on a face thereof;

FIG. 8 is an illustration of a method of computing the area of a regionhaving no building;

FIG. 9 is an illustration of the manner in which the reference regionsare fitted to a surface by moving knots that describe the surface;

FIG. 10 is an illustration of directions in which knots of a NURBSsurface can move;

FIG. 11 is an illustration of the manner in which a portion with a largeerror is tessellated into smaller sections when the reference regionscannot be fitted to the surface;

FIG. 12 is a flowchart showing a detailed process of extracting roadregions from the elevation-data;

FIG. 13 includes illustrations of the manner in which road regions areextracted; and

FIG. 14 is an illustration of a method of computing a gray level at theposition of each pixel.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

With reference to the drawings, embodiments of the present inventionwill be described in detail.

FIG. 1 shows the mapping of altitude information onto a two-dimensionalplane. The two-dimensional plane shown in FIG. 1 represents the groundsurface of a plain, mountain, suburb, or central city. Altitudeinformation or elevation-data is obtained at predetermined intervals inthe x and y directions and represented as a z-coordinate value of eachpoint at the coordinates (x, y). The x and y axes correspond to, forexample, the latitude and longitude, respectively.

Two-dimensional plane information including such altitude informationcovering an extensive region can be directly and easily generated by,for example, obtaining a range from space to the ground using anairplane, a satellite, or the like. Altitude information measured fromspace is compensated for geographical errors, and the altitudeinformation is made into an ortho-image on the basis of the accurategeographic information. As a result, the altitude information is mappedto each observation point on a map.

A two-dimensional plane to which altitude information is mapped, such asthat shown in FIG. 1, represents the pseudo-relief of the ground or thelike. In central cities or downtown areas crowded with buildings,altitude information directly generated by obtaining a range from spaceusing an airplane, a satellite, or the like does not indicate thedistance from space to the ground, but indicates the distance from spaceto ground covering objects such as buildings. Such altitude informationincludes an error component of terrain information.

Hitherto, the effects of unevenness of altitude information, which iscaused by the ground covering objects such as buildings, have beenremoved using a smoothing filter such as a moving average filter. FIG. 2shows the effects of buildings on the actual landform when a smoothingfilter is used. Specifically, FIG. 2 shows the actual landform 1,building data 2 on surface covering objects such as buildings, andterrain data 3 generated using the smoothing filter.

As is clear from FIG. 2, with the known method of removing groundcovering objects, the terrain data 3 is influenced by the building data2 and indicates higher altitudes than the actual landform 1. Unevennessof the building group may be reflected in the terrain data 3 dependingon the averaged area.

FIG. 3 shows examples of reference regions for obtaining the terrain ofthe ground according to an embodiment of the present invention.Referring to FIG. 4, since a highway region 4 is wide, the highwayregion 4 is not influenced by buildings located on both sides of thehighway. The highway region 4 is long, narrow, and gently winding andhas a smoothly and continuously changing altitude. Using such knowledge,the highway region 4 can be extracted from the elevation-data.

A road 5 is a relatively narrow road that cannot be reliably extractedby the above knowledge-based method. Regions 6 represent parks or vacantareas that are not influenced by buildings. In this embodiment, becausealtitude information in the regions 6 is not influenced by buildings, asurface including, on a face thereof, the altitude information in suchregions is created.

FIG. 4 schematically shows the functional configuration of athree-dimensional terrain-information generating system 10 according tothe embodiment of the present invention.

In the three-dimensional terrain-information generating system 10, a CPU(Central Processing Unit) 14 activates various application programs inan execution environment provided by an OS (Operating System). The CPU14 is interconnected via a bus 22 to components in the three-dimensionalterrain-information generating system 10.

A RAM (Random Access Memory) 15 is a volatile semiconductor memory. TheRAM 15 is used to load therein program code to be executed by the CPU 14from an external storage unit such as a recording unit 13 (describedbelow) and to temporarily store work data being processed by an executedprogram.

The programs executed by the CPU 14 include a three-dimensionalterrain-information generating application for mapping elevation-dataonto a two-dimensional plane and for removing the effects of buildings.The work data includes two-dimensional plane information such asbuilding information and road map information, elevation-data mappedonto the two-dimensional plane information, elevation-data from whichthe effects of buildings are being removed and have been removed, andvalues calculated during the removing of the buildings' effects.

A ROM (Read Only Memory) 16 is a non-volatile semiconductor memory andis used to permanently store predetermined program code and data. TheROM 16 stores, for example, a power-on self-test (POST) programactivated upon activation of the three-dimensional terrain-informationgenerating system 10, a basic input/output software (BIOS) for operatingthe hardware component in the three-dimensional terrain-informationgenerating system 10, and the like.

An input unit 11 is formed of, for example, a user input unit such as akeyboard or a mouse. The input unit 11 is used to manually input, or byany other methods, raw data such as building/road map information andelevation-data for generating three-dimensional terrain information orto input a user command for generating three-dimensional terraininformation or other user commands.

A display unit 12 is formed of a display or a printer that visualizesthe arithmetic computation results by the CPU 14 and outputs the resultsto a user. For example, the display unit 12 displays and outputsbuilding/road map information, three-dimensional terrain informationgenerated by removing the effects of buildings from elevation-datamapped onto a two-dimensional plane, or the computation results duringthe removing of the effects of buildings.

The recording unit 13 is formed of, for example, a high-capacity fixedexternal storage unit such as a hard disk drive (HDD) or a read/writeunit such as a CD (DVD)-ROM drive including a portable recording medium.

The HDD is an external storage unit having a magnetic disk serving as afixed storage medium (as is well known). The HDD is superior to otherexternal storage units because of the storage capacity and data transferrate. Placing a software program in an executable state on the HDD isreferred to as “installing” of the program into the system. Generally,the HDD has stored therein program code of the operating system,application programs, and device drivers that are to be executed by theCPU 14 in a nonvolatile manner. For example, the three-dimensionalterrain information generating application for mapping elevation-dataonto a two-dimensional plane and for removing the effects of buildingscan be installed on the HDD. Two-dimensional plane information such asbuilding information and road map information, which is processed duringthe three-dimensional terrain information generation, elevation-data(initial values), elevation-data mapped onto a two-dimensional plane,from which the effects of buildings are removed, and other libraries canbe stored on the HDD.

The portable recording medium is primarily used to back up softwareprograms and data files in the form of data in a computer-readableformat or to transfer such software programs and data files betweensystems (including sales and distribution). For example, thethree-dimensional terrain-information generating application for mappingelevation-data onto a two-dimensional plane and for removing the effectsof buildings can be physically distributed among a plurality ofapparatuses using such portable recording media. Such portable recordingmedia are used to provide, to the outside of the system, two-dimensionalplane information such as building information and road map information,which is processed during the three-dimensional terrain informationgeneration, elevation-data (initial values), and elevation-data that issupplied with other libraries and/or mapped onto a two-dimensionalplane, from which the effects of buildings are removed.

A communication interface 21 connects the three-dimensionalterrain-information generating system 10 to a local network such as aLAN (Local Area Network) and, furthermore, to a WAN (Wide Area Network)such as the Internet in accordance with predetermined communicationprotocols such as Ethernet (registered trademark). A plurality of hostterminals (not shown) are transparently connected to one another on thenetwork to construct a distributed computing environment. Distributionservices providing software programs and data content can be offered onthe network. For example, the three-dimensional terrain-informationgenerating application for mapping elevation-data onto a two-dimensionalplane and for removing the effects of buildings can be downloaded viathe network. The network is used to provide, to the outside of thesystem, two-dimensional plane information such as building informationand road map information, which is processed during thethree-dimensional terrain information generation, elevation-data(initial values), and elevation-data that is supplied with otherlibraries and/or mapped onto a two-dimensional plane, from which theeffects of buildings are removed.

A flow analyzer 17, a matching unit 18, a reference region obtainingunit 19, and a surface fitting unit 20 cooperate with the CPU 14 torealize the three-dimensional terrain information generation involvingthe removing of the effects of buildings from elevation-data that ismapped onto a two-dimensional plane. The flow analyzer 17 extracts aroad region (highway region) from input elevation-data (initial values).The matching unit 18 receives the extracted road region and matches thecoordinates of the elevation-data with the coordinates on abuilding/road map. The reference region obtaining unit 19 obtainsreference regions for creating three-dimensional terrain data. Thesurface fitting unit 20 performs the fitting of a surface so that thesurface includes the reference region on a face thereof.

FIG. 5 is a flowchart showing a schematic process of generating, by thethree-dimensional terrain-information generating system 10 according tothis embodiment, the terrain of the ground by mapping elevation-data(including altitude information mapped onto a two-dimensional plane) tobuilding/road map information and by removing the effects of buildings.The process is actually realized by executing, by the CPU 14, thethree-dimensional terrain-information generating application incooperation with the flow analyzer 17, the matching unit 18, thereference region obtaining unit 19, and the surface fitting unit 20.

An altitude information map (elevation-data) is input to thethree-dimensional terrain-information generating system 10 (step S1).The elevation-data is, as shown in FIG. 1, mapped onto a two-dimensionalxy plane.

The flow analyzer 17 analyzes the flow of the elevation-data, which hasbeen mapped onto the two-dimensional plane, and extracts a flow portionsuch as a highway that is long, narrow, and gently winding and that hasa smoothly and continuously changing altitude (step S2).

A building/road map is input to the three-dimensionalterrain-information generating system 10 (step S3). The building/roadmap is matched with the flow portion extracted in step S2, therebygenerating a transform from the building/road map to the elevation-data(described below) (step S4).

The altitude of regions other than building-located regions is obtainedfrom altitude information included in the elevation-data correspondingto the building/road map (step S5). Approximation of a NURBS surface isperformed (step S6).

In step S2, the flow analyzer 17 extracts a road region as a flowportion from the elevation-data. FIG. 12 is a flowchart showing adetailed process of extracting a road region from elevation-data. FIG.13 shows the manner in which a road region is extracted.

The elevation-data is transformed into an image having an elevationvalue at each observation point as a pixel value (step S21). Referringto FIG. 13, an image 1301 is the result of the image transformation.

A two-dimensional Fourier transform is applied to the image 1301 (stepS22) to transform pixel information into frequency information.Referring to FIG. 13, a region 1302 represents the result of thetwo-dimensional Fourier transform. In the example shown in FIG. 13, abuilding region 1312 having buildings has more high frequency componentsdue to variations in altitude of the buildings. In contrast, a roadregion 1311 has a relatively smoothly changing altitude and thus hasmore low frequency components.

A band pass filter allowing the road region to pass is applied (stepS23), and then an inverse two-dimensional Fourier transform is applied(step S23′) to transform the frequency information into pixelinformation. FIG. 13 shows a band pass filter 1303 allowing a frequencycomponent 1331 corresponding to the road region to pass. FIG. 13 alsoshows pixel information 1304 generated by applying the band pass filterand then the inverse two-dimensional Fourier transform.

Since the road region is located at a relatively low position, the roadregion is binarized (step S24), and the contours thereof are extracted(step S25). The contours define a road region. Referring to FIG. 13, animage 1304 shows the result of binarization of the pixel informationgenerated by the inverse Fourier transform, and an image 1305 shows theresult of contour extraction.

Extraction of a road region by the above-described method requiresreplacement of altitude information at each observation point inelevation-data with a pixel, that is, a gray value. With reference toFIG. 14, a method of obtaining a gray value at a pixel position will nowbe described.

FIG. 14 shows image pixels 1401 to 1409 and observation points 1411 and1412. Each image pixel has a pixel value that is an average of elevationvalues at observation points included therein.

The pixel value of the image pixel 1401 is an average of elevationvalues at the observation points 1411 and 1412.

As in the image pixel 1405, if an image pixel contains no observationpoint, the pixel value of that image pixel is obtained as an average ofpixel values of the surrounding pixels. In the example shown in FIG. 14,the pixel value of the image pixel 1405 is obtained as an average ofpixel values of the surrounding image pixels 1401 to 1404 and 1406 to1409. If an adjacent image pixel contains no observation point,interpolation is performed using the pixel values of surrounding imagepixels.

FIG. 6 illustrates the scheme for obtaining, in step S4 of the flowchartshown in FIG. 5, a coordinate transform from the building/road map tothe elevation-data.

Elevation-data 601 is data from which a flow portion 612 is extracted bythe flow analyzer 17. The flow portion 612 corresponds to a highwayregion and is extracted because the highway region is a region that hassmoothly and continuously changing altitude information and that islong, narrow, gently winding, and continuous. Since the highway regionis wide, the highway region is not influenced by buildings located onboth sides thereof.

A building/road map 602 includes a highway region 622 and a road region623 having a width specified by a user, other than the highway region622. The highway region 622 and the road region 623 are road regionsthat can be used to obtain the three-dimensional terrain.

An image 603 shows the result of matching, by the matching unit 18,between the elevation-data 601 from which the flow portion 612 has beenextracted and the building/road map 602.

The matching unit 18 obtains the following coordinate transform frombuilding/road map coordinates (u, v, 1) to elevation-data (x, y, 1):

$\begin{matrix}\left. \begin{pmatrix}x \\y \\1\end{pmatrix}\leftarrow{{SRT}\begin{pmatrix}u \\v \\1\end{pmatrix}} \right. & (1)\end{matrix}$wherein matrix S represents scaling transformation, which ischaracterized by scales a and b:

$\begin{matrix}{S = \begin{pmatrix}a & 0 & 0 \\0 & b & 0 \\0 & 0 & 1\end{pmatrix}} & (2)\end{matrix}$

In the coordinate transform described above, matrix R representsrotational transformation, which is characterized by a rotation θ:

$\begin{matrix}{R = \begin{pmatrix}{\cos\;\theta} & {{- \sin}\;\theta} & 0 \\{\sin\;\theta} & {\cos\;\theta} & 0 \\0 & 0 & 1\end{pmatrix}} & (3)\end{matrix}$

In the coordinate transform described above, matrix T representsparallel translation, which is expressed by a translation vector (c, d):

$\begin{matrix}{T = \begin{pmatrix}0 & 0 & 0 \\0 & 0 & 0 \\c & d & 1\end{pmatrix}} & (4)\end{matrix}$

FIG. 7 is a flowchart showing a process of obtaining reference regionsfrom elevation-data and obtaining a surface including the referenceregions on a face thereof. The process is realized by executing, on thethree-dimensional model generating system 10, by the CPU 14, thethree-dimensional terrain-information generating application incooperation with the reference region obtaining unit 19 and the surfacefitting unit 20.

The surface fitting unit 20 creates a NURBS plane corresponding to atarget region (step S11). A NURBS surface is a typical geometric formrepresentation method for representing planes, quadric surfaces, andfree-form surfaces and has knots serving as adjustable parameters. Inthis embodiment, a plane having 3×3 knots disposed at equal intervals iscreated.

The reference region obtaining unit 19 stacks road regions in descendingorder of width into a reference list (step S12), and then stacksreference regions such as parks in descending order of area into thereference list (step S13).

One reference region is selected after another until the reference listbecomes empty (steps S14 and S15), and the reference region is fitted byadjusting the NURBS knots.

In this embodiment, the reference regions are optimized by annealing.Specifically, the 3×3 knots serving as the NURBS parameters are adjustedby minimizing a square error of the knots (step S16). When the minimumsquare error is greater than a preset value (step S17), the NURBSsurface is tessellated into smaller sections (step S18).

It is generally known that annealing results in local solutions. On theother hand, since the three-dimensional shape of the target ground isgenerally not complex, and the NURBS surface has characteristics in thatthe knots have local influence, annealing leads to an optimal solution.If the equilibrium state is achieved while the square error is greaterthan the preset value, a mesh portion with the large square error istessellated into smaller sections, and the fitting is continuouslyperformed.

The reference region extracting process, which is shown in FIG. 7,extracts reference regions in descending order of area. In thisembodiment, a region with no building is processed as a set of strips.FIG. 8 illustrates the manner in which the area of a region with nobuilding is computed.

A region with no building 801 is regarded as a set of strips 811 to 818.On the basis of the uv coordinate system shown in FIG. 8, the strips 811to 818 are generated by cutting them out of the region 801 in the udirection and by aligning them so that the right edges thereofcorrespond to values of the region 801 in the v direction. The area ofeach of the strips 811 to 818 is calculated, and the sum of the areas iscomputed as the area of the region 801. Needless to say, the area of theregion with no building 801 can be computed by methods other than thatshown in FIG. 8.

The surface fitting process shown in FIG. 7 performs optimization bymoving the knots that describe the surface so that the reference regionsare fitted to the surface. FIG. 9 shows the manner in which thereference regions are fitted by moving the knots of the NURBS surface.

Referring to FIG. 9, a control polygon 901 that characterizes a targetsurface 902 has control points 911. Road regions 921 and 922 are to befitted to a face of the target surface 902.

A method for adjusting parameters of a NURBS surface will now bedescribed. FIG. 10 shows directions in which knots can move.

Referring to FIG. 10, knots 1011, 1041, 1014, and 1044 are allowed tomove only vertically (w direction). Knots 1021, 1031, 1024, and 1034 areallowed to move only in the u and w directions. Knots 1012, 1013, 1042,and 1043 are allowed to move only in the v and w directions. The otherknots 1022, 1032, 1023, and 1033 are allowed to move in all directions(u, v, and w directions).

This characteristic is maintained in tessellated control polygons onlywhen they share the outermost contours with the original controlpolygon.

The surface fitting process shown in FIG. 7 tessellates the NURBSsurface when the NURBS surface cannot be adjusted. FIG. 11 shows themanner in which a portion with a large error is tessellated when thereference regions cannot be fitted.

Referring to FIG. 11, a control polygon 1101 includes a tessellatedcontrol polygon 1102 with knots 1103 for controlling the tessellatedcontrol polygon 1102. This gives rise to a restriction on the movementof control points, requiring a smooth surface to be formed of theoriginal surface and the tessellated surfaces.

While the present invention has been described with reference to whatare presently considered to be the preferred embodiments, it is to beunderstood that modifications and substitutions can be made by thoseskilled in the art without departing from the scope of the presentinvention. In other words, the present invention has been describedusing the embodiments only for illustration purposes and should not beinterpreted in a limited manner. The scope of the present invention isto be determined solely by the appended claims.

It is to be understood by those skilled in the art that the presentinvention is easily extended by replacing the word “building” in theappended claims with, for example, an artificial structure such as abridge, bank, or breakwater or a natural structure such as a mountain,cliff or rock. In other words, it is to be understood that variousthree-dimensional model generating apparatuses, methods, systems, andprograms using (1) information on ground regions and (2) information onother regions that can be distinguished from the ground, both of whichare included in two-dimensional map data, are considered to beequivalents of the present invention as long as they are based on aspirit similar to the present invention. In this case, the informationon ground regions and the information on other regions that can bedistinguished from the ground may be used instead of the two-dimensionalmap data.

It is to be understood by those skilled in the art that the presentinvention is easily extended by replacing the word “elevation-data” inthe appended claims with simple altitude data. In other words, it is tobe understood that various three-dimensional model generatingapparatuses, methods, systems, and programs using information on groundregions, information on other regions that can be distinguished from theground, and altitude data are considered to be equivalents of thepresent invention as long as they are based on a spirit similar to thepresent invention.

Japanese Patent Application No. 2002-089967 (filed on Mar. 27, 2002)discloses three-dimensional modeling of a building portion usinginformation on ground regions, information on other regions that can bedistinguished from the ground, and altitude data. Japanese PatentApplication No. 2002-089966 (filed on Mar. 27, 2002) disclosesthree-dimensional modeling of a terrain portion using information onground regions, information on other regions that can be distinguishedfrom the ground, and altitude data. The complete disclosures of theseJapanese patent applications are incorporated herein by reference.

1. A three-dimensional terrain-information generating system forgenerating three-dimensional terrain information by mappingelevation-data including altitude information that is mapped onto atwo-dimensional plane onto building/road map information and by removingeffects of a building, comprising: a flow analyzer that extracts a flowportion from the elevation-data, said flow portion including elevationdata for a long area having a defined width and smoothly changingaltitude information; a matching unit that receives the extracted flowportion and that matches coordinates of the elevation-data withcoordinates on a building/road map; a reference region obtaining unitthat obtains a reference region for creating three-dimensional terraindata from the elevation-data; and a surface fitting unit that performsthe fitting of a surface so that the surface includes the referenceregion on a face thereof.
 2. The three-dimensional terrain-informationgenerating system according to claim 1, wherein the flow analyzerextracts, from the elevation-data, a region having altitude informationthat indicates a long, narrow, and gently winding region and thatchanges smoothly and continuously as the flow portion.
 3. Thethree-dimensional terrain-information generating system according toclaim 1, wherein the flow analyzer obtains a road region by generatingan image to which pixel values corresponding to the altitude informationare mapped, decomposing the image into frequency components by a Fouriertransform, extracting a frequency component corresponding to the roadregion, performing an inverse Fourier transform, and extracting contoursof the road region.
 4. The three-dimensional terrain-informationgenerating system according to claim 1, wherein the matching unitobtains a transform from the building/road map information to theelevation-data by matching the flow portion extracted by the flowanalyzer with a road region included in the building/road mapinformation, obtains the altitude of a region other than abuilding-located region from the altitude information included in theelevation-data corresponding to the building/road map, and performs asurface approximation using the transform.
 5. The three-dimensionalterrain-information generating system according to claim 1, wherein thereference region obtaining unit extracts a region including a park thatis free from the effects of the building as the reference region.
 6. Athree-dimensional terrain-information generating system for generatingthree-dimensional terrain information by mapping elevation-dataincluding altitude information that is mapped onto a two-dimensionalplane onto building/road map information and by removing effects of abuilding, comprising: a flow analyzer that extracts a flow portion fromthe elevation-data; a matching unit that receives the extracted flowportion and that matches coordinates of the elevation-data withcoordinates on a building/road map; a reference region obtaining unitthat obtains a reference region for creating three-dimensional terraindata from the elevation-data; and a surface fitting unit that performsthe fitting of a surface so that the surface includes the referenceregion on a face thereof, wherein the surface fitting unit generates asurface including the reference region by an approximation of aNon-Uniform Rational B-Spline (NURBS) surface, and wherein the surfacefitting unit adjusts the NURBS surface by minimizing a square error ofNURBS parameters, and, when the NURBS surface cannot be adjusted,tessellates the NURBS surface into smaller sections.
 7. Athree-dimensional terrain-information generating method for generatingthree-dimensional terrain information by mapping elevation-dataincluding altitude information that is mapped onto a two-dimensionalplane onto building/road map information and by removing effects of abuilding, comprising: a flow analyzing step of extracting a flow portionfrom the elevation-data, said flow portion including elevation data fora long area having a defined width and smoothly changing altitudeinformation; a matching step of receiving the extracted flow portion andmatching coordinates of the elevation-data with coordinates on abuilding/road map; a reference region obtaining step of obtaining areference region for creating three-dimensional terrain data from theelevation-data; and a surface fitting step of performing the fitting ofa surface so that the surface includes the reference region on a facethereof.
 8. The three-dimensional terrain-information generating methodaccording to claim 7, wherein, in the flow analyzing step, a regionhaving altitude information that indicates a long, narrow, and gentlywinding region and that changes smoothly and continuously is extractedas the flow portion from the elevation-data.
 9. The three-dimensionalterrain-information generating method according to claim 7, wherein, inthe flow analyzing step, a road region is obtained by generating animage to which pixel values corresponding to the altitude informationare mapped, decomposing the image into frequency components by a Fouriertransform, extracting a frequency component corresponding to the roadregion, performing an inverse Fourier transform, and extracting contoursof the road region.
 10. The three-dimensional terrain-informationgenerating method according to claim 7, wherein, in the matching step, atransform from the building/road map information to the elevation-datais obtained by matching the flow portion extracted in the flow analyzingstep with a road region included in the building/road map information,the altitude of a region other than a building-located region isobtained from the altitude information of the elevation-datacorresponding to the building/road map, and a surface approximation isperformed using the transform.
 11. The three-dimensionalterrain-information generating method according to claim 7, wherein, inthe reference region obtaining step, a region including a park that isfree from the effects of the building is extracted as the referenceregion.
 12. The three-dimensional terrain-information generating methodaccording to claim 11, wherein, in the surface fitting step, a surfaceincluding the reference region is generated by an approximation of aNURBS surface.
 13. A three-dimensional terrain-information generatingmethod for generating three-dimensional terrain information by mappingelevation-data including altitude information that is mapped onto atwo-dimensional plane onto building/road map information and by removingeffects of a building, comprising: a flow analyzing step of extracting aflow portion from the elevation-data; a matching step of receiving theextracted flow portion and matching coordinates of the elevation-datawith coordinates on a building/road map; a reference region obtainingstep of obtaining a reference region for creating three-dimensionalterrain data from the elevation-data; and a surface fitting step ofperforming the fitting of a surface so that the surface includes thereference region on a face thereof, wherein, in the surface fittingstep, the NURBS surface is adjusted by minimizing a square error ofNURBS parameters, and, when the NURBS surface cannot be adjusted, theNURBS surface is tessellated into smaller sections.
 14. A computerprogram written in a computer readable format to perform, on a computersystem, the processing of generating three-dimensional terraininformation by mapping elevation-data including altitude informationthat is mapped onto a two-dimensional plane onto building/road mapinformation and by removing effects of a building, comprising: a flowanalyzing step of extracting a flow portion from the elevation-data,said flow portion including elevation data for a long area having adefined width and smoothly changing altitude information; a matchingstep of receiving the extracted flow portion and matching coordinates ofthe elevation-data with coordinates on a building/road map; a referenceregion obtaining step of obtaining a reference region for creatingthree-dimensional terrain data from the elevation-data; and a surfacefitting step of performing the fitting of a surface so that the surfaceincludes the reference region on a face thereof.